perm filename FTP.JHS[UP,DOC]1 blob
sn#002782 filedate 1972-10-06 generic text, type T, neo UTF8
PRELIMINARY DOCUMENT
FTP
The FTP program implements file transfer from/to Stanford AI
Laboratory to/from other sites on the ARPA network. When TALKER
is run, it will ask for a site
name, and initiate connection to that site. This is done in the
same manner as in the TALKER, except that connection is made
to a file transfer protocol server program, rather than a listener-
type telnet.
If/when connection is established, you may type the following
commands:
BYTE 36
TYPE I
MODE S
RETR <local file spec> ← <foreign file spec>
STOR <local file spec> → <foreign file spec>
USER <user-id for foreign site, if required>
PASS <password for foreign site, if required>
ACCT <account # for foreign site, if required>
QUIT
All commands must be terminated with a <CRLF>.
In general, data transfers may be one of several types, in
one of several modes, and occur in various byte size. Currently,
we implement only 36-bit byte, image type, stream mode transfers.
(Currently, MIT implementation is also restricted to the same.)
This implementation is adequate, and the most efficient, for the
transfer of files to/from other PDP-10's.
Semantics of the commands, if needed, will be found on
page 3. Example scenarios are given on page 2.
The following scenario is a record of an actual file transfer.
A file called "FTPU3" was transferred from M.I.T. A.I. to
SAIL. The "FTPU3 >" is an M.I.T. file specification for the
"most recent version of the file called 'FTPU3' ".
Preceding "FTPU3 >" with "PJ;" indicates that the file is
on the disk area at M.I.T. belonging to a programmer whose
"PPN" is "PJ". Thus, "PJ;FTPU3 >" is a file specification
at M.I.T. A.I., just as "FTPU[NET,SYS]" is a file spec. here
at STanford.
In the scenario, which is unedited, any line of text which
is preceded by a three digit number, is a message from the foreign
site [AI] file transfer program. Other lines of text (after the
first three lines) are either commands typed to FTP by the
user, or are comments to the user from the FTP.
SCENARIO:
.R FTP
Site: AI
We got the logger
We got a socket number: 2470
We got receive side open
Connection established
000 MIT-AI FTP-SERVER
050 ANYTHING OTHER THAN IMAGE, 36 BIT BYTE TRANSFERS WILL BRING LESS
050 THAN SATISFACTORY RESULTS. IF YOU HAVE PROBLEMS OR QUESTIONS
050 CONTACT: PITTS JARVIS AT 617-253-6765
BYTE 36
200 36 BIT BYTE AWAY
TYPE I
200 TYPE IMAGE
MODE S
200 MODE STREAM
RETR FTPU[NET,SYS]←PJ;FTPU3 >
OPENING FILE SYSTEM...OPEN..STARTING DATA LINK CONNECTION...
DATA LINK CONNECTED
255 SOCK 1339
250 LOOK OUT! HERE IT COMES.
DATA IN TRANSFER COMPLETE - 2604 WORDS XFERED, (10.0 KBAUD)
252 FINIS
QUIT
Connection broken
EXPLANATIONS OF THE FTP COMMANDS:
BYTE n n is a (decimal) number indicating the byte size
of the network data connection. Data will be sent from
one site to another in bytes of this size.
At the moment, n=36 is the only implemented byte
size here (SAIL), and also at M.I.T. (DM,AI,ML).
TYPE x x is "A","I","L","P", or "E", and specifies the
"representation type" for the data. A means the data
is in (8-bit) Ascii. I is image mode. The other three
are more obsure: "local byte", "print file (ascii)",
and "ebcdic print file."
At the moment, SAIL supports image type only.
MODE x x is "S","B","T", or "H", meaning "stream",
"block", "text", "hasp" respectively.
At the moment, SAIL supports stream mode only.
USER x x is a string which the foreign site will recognize
as a valid user desrciption, user name, or ppn. Not all
sites require a user name.
PASS foo foo is a password. Some sites may restrict
access to those who can supply the magic foo.
ACCT x x is an account number. Some sites may require
this for their billing/accounting purposes.
RETR x←y x is a local file specifier, and y is a foreign
file specifier. The foreign file "y" is copied to the
local file "x". Current settings (or default values) are
used for byte size, data type, and transmission mode.
The "x←" string is eaten locally, and the
"RETR y" part is transmitted to the foreign site.
"RETR" is an abbreviation of "RETRIEVE".
STOR x→y "STOR" means "store", and this command is the
inverse of the RETR command. A local file is copied
to a foreign site.
QUIT Terminate connections with the foreign site, and quit.